package com.alander.nexusgo.itinerary.model.entity;

import com.alander.nexusgo.framework.mysql.starter.model.BaseEntity;
import com.baomidou.mybatisplus.annotation.IdType;
import com.baomidou.mybatisplus.annotation.TableField;
import com.baomidou.mybatisplus.annotation.TableId;
import com.baomidou.mybatisplus.annotation.TableName;
import java.math.BigDecimal;
import java.util.Date;
import lombok.Data;

/**
 * 行程信息表
 * @TableName itinerary
 */
@TableName(value ="itinerary")
@Data
public class Itinerary extends BaseEntity {
    /**
     * 行程ID
     */
    @TableId(type = IdType.AUTO)
    private Long id;

    /**
     * 用户ID
     */
    private Long userId;

    /**
     * 标题
     */
    private String title;

    /**
     * 旅行风格:1- Solo,2- Couple,3- Group,4- Family
     */
    private Integer travelStyle;

    /**
     * 描述
     */
    private String description;

    /**
     * 参与人数
     */
    private Integer participants;

    /**
     * 开始时间
     */
    private Date startTime;

    /**
     * 结束时间
     */
    private Date endTime;

    /**
     * 天数
     */
    private Integer days;

    /**
     * 预算
     */
    private BigDecimal budget;

    /**
     * 费用
     */
    private BigDecimal cost;

    /**
     * 城市列表(JSON数组)
     */
    private Object cities;

    /**
     * 是否协作
     */
    private Integer cooperate;

    /**
     * 状态:1-规划中,2-进行中,3-已完成,4-已取消
     */
    private Integer status;

    /**
     * 是否AI生成:0-否,1-是
     */
    private Integer aiGenerated;

    /**
     * AI优化次数
     */
    private Integer aiOptimizationCount;
}